export default defineNuxtPlugin(nuxtApp => {
  // Nuxt 自动读取您的 plugins 目录中的文件
  // 并在创建 Vue 应用程序时加载它们
  // 你可以在文件名中使用 .server 或 .client 后缀来控制只在服务器端或客户端加载插件。

  // 注册自定义指令
  nuxtApp.vueApp.directive('dir', {
    mounted(el, binding) {
      el.handle = () => {
        binding.value && binding.value()
      }
      el.addEventListener('click', el.handle)
    },
    unmounted(el) {
      el.removeEventListener('click', el.handler)
    }
  })

  return {
    provide: {
      hello: msg => console.log('🎨 全局辅助函数 >>> ', `hello ${msg}!`)
    }
  }
})
